package com.lightjet.macross.base.upms.service;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.lightjet.macross.base.feign.api.domain.AuthRole;
import com.lightjet.macross.base.feign.api.domain.AuthUser;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.security.core.userdetails.UserDetails;

import java.util.List;

//多样化登录适配器
public interface LoginAdapterService {

    //返回加密后的密码
    String GetEncodedPwd(String original, String salt, Object args);

    //根据用户名和代理人用户名认证用户
    AuthUser Authenticate(String username, String proxyname);

    List<AuthRole> GetGrantedRoles(String systemname,String userkey);

    String GetSaltValueByUserName(String username);

    AuthUser GetByUserKey(String userkey);

    Page<AuthUser> FindByFilters(String keywords,Pageable pageable);
}
